home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1997 April
/
EnigmA AMIGA RUN 17 (1997)(G.R. Edizioni)(IT)[!][issue 1997-04][EAR-CD].iso
/
EARCD
/
util
/
wb
/
newmenu.lha
/
NewMenu
/
newmenu.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-09-23
|
5KB
|
128 lines
#ifndef INTUITION_NEWMENU_H
#define INTUITION_NEWMENU_H
/* ======================================================================== */
/* === Menu =============================================================== */
/* ======================================================================== */
struct ExtMenu
{
struct ExtMenu *NextMenu; /* same level */
WORD LeftEdge, TopEdge; /* position of the select box */
WORD Width, Height; /* dimensions of the select box */
UWORD Flags; /* see flag definitions below */
BYTE *MenuName; /* text for this Menu Header */
struct ExtMenuItem *FirstItem; /* pointer to first in chain */
/* these mysteriously-named variables are for internal use only */
WORD JazzX, JazzY, BeatX, BeatY;
APTR UserData; /* ignored by Intuition */
BYTE *HelpText; /* help text or NULL */
};
/* FLAGS SET BY BOTH THE APPLIPROG AND INTUITION */
#define MFLG_MENUENABLED 0x0001 /* whether or not this menu is enabled */
#define MFLG_NOGHOST 0x0002 /* no ghosting when disabled */
#define MFLG_LAYOUT 0x0004 /* let Intuition layout this menustrip,
* the items and the subitems
*
* with this flag set, LeftEdge, TopEdge,
* Width, Height, are ignored for the
* Menu, MenuItem, IntuiText
*
* LeftEdge and TopEdge are ignored for
* the Image structures
*
*/
#define MFLG_HELPTEXT 0x0008 /* help text is available on this
* menustrip, items, and subitems
*/
/* FLAGS SET BY INTUITION */
#define MFLG_PRIVATE1 0x0100 /* don't touch it... (was MIDRAWN) */
/* ======================================================================== */
/* === MenuItem =========================================================== */
/* ======================================================================== */
struct ExtMenuItem
{
struct ExtMenuItem *NextItem; /* pointer to next in chained list */
WORD LeftEdge, TopEdge; /* position of the select box */
WORD Width, Height; /* dimensions of the select box */
UWORD Flags; /* see the defines below */
LONG MutualExclude; /* set bits mean this item excludes that */
APTR ItemFill; /* points to Image, IntuiText, or NULL */
/* when this item is pointed to by the cursor and the items highlight
* mode MIFLG_HIGHIMAGE or MIFLG_HIGHTEXT is selected, this alternate
* state will be displayed
*/
APTR SelectFill; /* points to Image, IntuiText, or NULL */
BYTE Command; /* only if appliprog sets the COMMSEQ flag */
struct ExtMenuItem *SubItem; /* if non-zero, points to MenuItem for submenu */
/* The NextSelect field represents the menu number of next selected
* item (when user has drag-selected several items)
*/
UWORD NextSelect;
APTR UserData; /* ignored by Intuition */
BYTE *HelpText; /* help text or NULL */
};
/* FLAGS SET BY THE APPLIPROG */
#define MIFLG_CHECKIT 0x0001 /* set to indicate checkmarkable item */
#define MIFLG_ITEMTEXT 0x0002 /* set if textual, clear if graphical item */
#define MIFLG_COMMSEQ 0x0004 /* set if there's an command sequence */
#define MIFLG_MENUTOGGLE 0x0008 /* set for toggling checks (else mut. exclude) */
#define MIFLG_ITEMENABLED 0x0010 /* set if this item is enabled */
#define MIFLG_SBAR 0x0020 /* separator bar */
#define MIFLG_NOGHOST 0x0200 /* no ghosting while disabled */
#define MIFLG_NEXTCOLUMN 0x0400 /* place in the next column if possible */
#define MIFLG_HIGHLIGHT 0x0800 /* special color text */
/* these are the SPECIAL HIGHLIGHT FLAG state meanings */
#define MIFLG_HIGHFLAGS 0x00C0 /* see definitions below for these bits */
#define MIFLG_HIGHIMAGE 0x0000 /* use the user's "select Image" */
#define MIFLG_HIGHCOMP 0x0040 /* highlight by complementing the selectbox */
#define MIFLG_HIGHBOX 0x0080 /* highlight by "boxing" the selectbox */
#define MIFLG_HIGHNONE 0x00C0 /* don't highlight */
/* FLAGS SET BY BOTH APPLIPROG AND INTUITION */
#define MIFLG_CHECKED 0x0100 /* state of the checkmark */
/* FLAGS SET BY INTUITION */
#define MIFLG_OBSOLETE1 0x1000 /* obsolete (was ISDRAWN) */
#define MIFLG_OBSOLETE2 0x2000 /* obsolete (was HIGHITEM) */
#define MIFLG_OBSOLETE3 0x4000 /* obsolete (was MENUTOGGLED) */
/* = MENU STUFF =========================================================== */
#define NEWMENUPORTNAME "NewLook Menu Handler"
#define IDS_MENUNORMAL IDS_NORMAL
#define IDS_MENUHIGH IDS_SELECTED
#define IDS_MENUDISABLED IDS_DISABLED
#define IDS_MENUPICKEDNORMAL IDS_INACTIVENORMAL
#define IDS_MENUPICKEDHIGH IDS_INACTIVESELECTED
#define NM_HELP 96 /* fill the nm_Label with the
* help text for the previous
* menu, item, or subitem
*
* combining this with NM_IGNORE
* has no effect
*/
#endif /* INTUITION_NEWMENU_H */